package com.xuelang.pipeline.client.pipeline.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;
import java.util.List;

/**
 * <p>我的流水线DTO</p>
 *
 * @author : yixin.lys
 * @date : 2024-07-10 14:35
 **/
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class MyPipelineInfoDTO {

    /**
     * 序号
     */
    private Long id;
    /**
     * 流水线编码
     */
    private String pipelineCode;
    /**
     * 流水线名称
     */
    private String pipelineName;
    /**
     * 应用名称
     */
    private String applicationName;
    /**
     * 应用code
     */
    private String appCode;
    /**
     * 环境名称
     */
    private String environmentName;
    /**
     * 环境uuid
     */
    private String envUuid;
    /**
     * 组件名称
     */
    private String componentName;
    /**
     * 组件label
     */
    private String componentLabel;
    /**
     * 组件编码
     */
    private String componentCode;
    /**
     * 最近运行状态
     */
    private String recentlyRunStatus;
    /**
     * 最近运行状态值
     */
    private Integer status;
    /**
     * 最后触发任务
     */
    private String lastTaskName;
    /**
     * 触发信息
     */
    private String triggerInfo;
    /**
     * 触发信息实际值
     */
    private Integer triggerInfoValue;
    /**
     * 最近构建号
     */
    private String recentlyBuildNumber;
    /**
     * 任务总数
     */
    private String totalTaskCount;
    /**
     * 已执行次数
     */
    private String executedCount;
    /**
     * 最后运行开始时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date lastRunStartTime;
    /**
     * 标签数组
     */
    private List<TagDTO> tagList;

    /**
     * 流水线创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;

}
